import 'dart:ui';


/**
 * 网址简书 https://www.jianshu.com/p/7321152e637e
 * 设计稿    375  812
 * */
class TLSizeFit {
  // 1.基本信息
  static double physicalWidth;
  static double physicalHeight;  // 2276
  static double screenWidth;
  static double screenHeight;  //// 758.66
  static double dpr;
  static double statusHeight;

  static double rpx;
  static double px;
// 这里设置standardSize 为可选属性，如果使用者愿意以非iPhone6为标准，那么你使用时候传入对应的标准即可。这里默认750
  static void initialize({double standardSize = 750}) {
    // 1.手机的物理分辨率
    physicalWidth = window.physicalSize.width;
    physicalHeight = window.physicalSize.height;

    // 2.获取dpr
    dpr = window.devicePixelRatio;

    // 3.宽度和高度
    screenWidth = physicalWidth / dpr;
    screenHeight = physicalHeight / dpr;

    // 4.状态栏高度
    statusHeight = window.padding.top / dpr;

    // 5.计算rpx px的大小, iPhone6下 1px = 2rpx
    rpx = screenWidth / standardSize;
    px = screenWidth / standardSize * 2;
  }

  /**
   * 与设计稿尺寸有个两倍差  设计稿尺寸*2 为设置的值
   * */
  static double setRpx(double size) {
    return rpx * size;
  }

  /**
   * 与设计稿的尺寸统一了
   * */
  static double setPx(double size) {
    return px * size;
  }

  /**
   * 手机屏幕宽度 1080.0
   * */
  static double getScreenWidth(){
    // 1.手机的物理分辨率
    physicalWidth = window.physicalSize.width;
    return physicalWidth;
  }

   /**
    * 手机屏幕高度 2276.0
    * */
  static double getScreenHeight(){
    // 1.手机的物理分辨率
    physicalHeight = window.physicalSize.height;
    return physicalHeight;
  }

   /**
    * 手机屏幕宽度，分辨率  360.0
    * */
  static double getScreenWidthDrp(){
    return screenWidth;
  }

   /**
    * 手机屏幕高度，分辨率  758.6666666666666
    * */
  static double getScreenHeightDrp(){
    return screenHeight;
  }

//荣耀测试机
//    I/flutter (15639): screenWidth:1080.0
//    I/flutter (15639): screenHeight:2276.0
//    I/flutter (15639): screenWidthDrp:360.0
//    I/flutter (15639): screenHeightDrp:758.6666666666666

}
